1. Field of the Invention
The present invention generally relates to random access memory (RAM) devices and, more particularly, to an echo clock tracking circuit for tracking data output from a double data rate (DDR) RAM device.
2. Description of the Related Art
Random access memory (RAM) performance is a well known limitation to computer system performance. Processor speeds are rapidly outpacing primary memory performance, with both processor designers and system manufacturers developing higher performance memory subsystems in an effort to minimize memory performance limitations. Ideally, the memory performance would match or exceed processor performance, i.e., a memory cycle time would be less than one processor clock cycle. This is almost never the case and, so, the memory is a system bottleneck.
There are two common families of RAM memory devices used as primary storage directly accessible by the microprocessor. The first, static random access memory devices (SRAMS) are based on flip-flop circuits and retain data as long as power is supplied. The second, dynamic random access memory devices (DRAMs), store data as a function of a charge on a capacitor. The capacitors must constantly be refreshed since the charge dissipates. Both have advantages and disadvantages. DRAMs are relatively inexpensive to fabricate but are slow as compared to SRAMS. SRAMs are therefore typically reserved for use as caches. In both cases, data is clocked out of the RAM on either the rising or falling edge of a clock pulse.
Innovations in RAM technology have lead to the so called Double Data Rate (DDR) RAM. The DDR RAM allows reads and writes at twice the frequency of the applied clock by moving data on both rising and falling clock edges. One drawback to the DDR architecture is that processors have to modify their cache control logic to recognize the double-data-rate signal. With normal cache SRAM, for each processor clock cycle the SRAM delivers one piece of data, whereas with DDR there is one piece of data on the rising edge and one piece on the falling edge of the clock. Thus, the DRR RAM also features a set of echo clock outputs with a propagation delay that tracks the performance of the RAM data outputs. By using echo clocks to trigger sensing valid input data, processor input buffers are able to catch RAM data when it is there, even at frequencies of 400 to 600 MHZ. This allows each RAM to deliver data at twice the speed of conventional devices for the same clock speed.
The echo clock is important for indicating when a valid data is transferred by the RAM. This echo clock is so named since it echos the pipelined data. The loss of tracking between echo clocks and data, will result in specification violations between memory devices and microprocessor (or vice-versa). Further loss of tracking will result in data glitches that can cause system failures. These two events occur any time that the RAM device is cycled at a frequency greater than the access time of the RAM device.